package collection;

import java.util.ArrayList;
import java.util.Collection;

/**
 * 集合:
 * 1)是一种引用数据类型, 用于存储一组元素, 并且提供了多种不同的数据结构供我们使用
 * 2)java.util.Collection是一个接口, 定义了所有集合都必须具备的功能
 * 3)Collection接口下有两个常见的子接口:
 *  3.1)List:元素可以重复, 有序集合
 *  3.2)Set:元素不可以重复
 */
public class CollectionDemo1 {
    public static void main(String[] args) {
        //Collection c = new HashSet();
        Collection c = new ArrayList();
        c.add("one");
        c.add("two");
        c.add("three");
        c.add("four");
        c.add("five");
        boolean b = c.add("one"); //add(0的返回值为boolean型, 添加成功返回true, 否则返回false
        System.out.println(b); //
        System.out.println("------------------------------------------------------");

        //集合重写了Object类的toString()方法, 返回格式如下:
        //[元素1.toString(), 元素2.toString(), 元素3.toString(), ......]
        System.out.println(c); //[one, two, three, four, five, one]
        System.out.println("-------------------------------------------------");

        System.out.println("size:" + c.size()); //6, 输出集合的元素个数
        System.out.println("是否是空集:"+c.isEmpty()); //false, 只有当size()为0时表示为空集
        c.clear(); //清空集合
        System.out.println("集合已清空");
        System.out.println(c); //[]
        System.out.println("size:"+c.size()); //10
        System.out.println("是否是空集:"+c.isEmpty()); //true
    }
}
